Semantic Language Extensions for Implicit Parallel Programming

نویسنده

  • PRAKASH PRABHU
چکیده

Several emerging fields of science and engineering are increasingly characterized by computationally intensive programs. Without parallelization, such programs do not benefit from the increasing core counts available in todays chip multiprocessors. However, writing correct and well-performing parallel programs is widely perceived to be an extremely hard problem. In order to understand the challenges faced by scientific programmers in effectively leveraging parallel computation, this dissertation first presents an in-depth field study of the practice of computational science. Based on the results of the field study, this dissertation proposes two new implicit parallel programming (IPP) solutions. With IPP, artificial constraints imposed by sequential models for automatic parallelization are overcome by use of semantic programming extensions. These preserve the ease of sequential programming and enable multiple parallelism forms without additional parallelism constructs, achieving the best of both automatic and explicit parallelization. The first IPP solution, Commutative Set, generalizes existing notions of semantic commutativity. It allows a programmer to relax execution orders prohibited under a sequential programming model with a high degree of expressiveness. The second IPP solution, WeakC, provides language extensions to relax strict consistency requirements of sequential data structures, and dynamically optimizes a parallel configuration of these data structures via a combined compiler-runtime system. This dissertation evaluates both Commutative Set and WeakC on real-world applications running on real hardware, including some that are actively used by some scientists in their day-to-day research. The detailed experimental evaluation results demonstrate the effectiveness of the proposed techniques.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Parallel Logic Programming with Extensions

A programming language is a tool and a vehicle for applications. The need to promote the evolution of Prolog towards a more expressive new logic programming language. A large medium-term national research project. Extensions to Logic Programming: new forms of computational reasoning, with explicit negation, constraint programming, parallelism and distribution support. The resulting language: PR...

متن کامل

DPC++: Object-Oriented Programming Applied to Cluster Computing

This paper presents DPC++, an extension of C++ dedicated to object-oriented parallel and distributed programming on clusters of SMPs. DPC++ follows the active object model and provides language constructs for the exploration of both fineand coarse-grain parallelism. The main goal of the language is to encourage intuitivity in concurrent programming by means of implicit parallelism. We present a...

متن کامل

Natural Language Multiprocessing: A Case Study

This paper presents two case studies of parallelization of large Natural Language Processing (NLP) applications using a parallel logic programming system (called "ACE") that automatically exploits implicit parallelism. The first system considered is Artwork, a system for semantic disambiguation, speech act resolution, and temporal reference resolution. The second system is ULTRA, a multilingual...

متن کامل

A Comparison of Implicit and Explicit Parallel Programming

The impact of the parallel programming model on scientiic computing is examined. A comparison is made between Sisal, a functional language with implicit parallelism, and SR, an imperative language with explicit parallelism. Both languages are modern, high-level, concurrent programming languages. Five diierent scientiic applications were programmed in each language, and evaluated for programmabi...

متن کامل

Programming Research Group Some Extensions to the Probabilistic, Biased Model of Timed Csp Some Extensions to the Probabilistic, Biased Model of Timed Csp

In a previous paper Low92] we presented two languages based upon timed CSP, with associated semantic models. The rst language included biased operators in the syntax, which could be used to model diierent priorities on actions. The second language extended this by adding a probabilistic choice operator to the syntax; this allowed us to give a semantics which modelled the probabilities of diiere...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013